<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>IslandManager - p2.js</title>
    <link rel="stylesheet" href="http://yui.yahooapis.com/3.9.1/build/cssgrids/cssgrids-min.css">
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
    <link rel="stylesheet" href="../assets/css/main.css" id="site_styles">
    <link rel="icon" href="../assets/favicon.ico">
    <script src="http://yui.yahooapis.com/combo?3.9.1/build/yui/yui-min.js"></script>
</head>
<body class="yui3-skin-sam">

<div id="doc">
    <div id="hd" class="yui3-g header">
        <div class="yui3-u-3-4">
                <h1><img src="../assets/css/logo.png" title="p2.js" width="117" height="52"></h1>
        </div>
        <div class="yui3-u-1-4 version">
            <em>API Docs for: 0.7.1</em>
        </div>
    </div>
    <div id="bd" class="yui3-g">

        <div class="yui3-u-1-4">
            <div id="docs-sidebar" class="sidebar apidocs">
                <div id="api-list">
                    <h2 class="off-left">APIs</h2>
                    <div id="api-tabview" class="tabview">
                        <ul class="tabs">
                            <li><a href="#api-classes">Classes</a></li>
                            <li><a href="#api-modules">Modules</a></li>
                        </ul>
                
                        <div id="api-tabview-filter">
                            <input type="search" id="api-filter" placeholder="Type to filter APIs">
                        </div>
                
                        <div id="api-tabview-panel">
                            <ul id="api-classes" class="apis classes">
                                <li><a href="../classes/AABB.html">AABB</a></li>
                                <li><a href="../classes/AngleLockEquation.html">AngleLockEquation</a></li>
                                <li><a href="../classes/Body.html">Body</a></li>
                                <li><a href="../classes/Box.html">Box</a></li>
                                <li><a href="../classes/Broadphase.html">Broadphase</a></li>
                                <li><a href="../classes/Capsule.html">Capsule</a></li>
                                <li><a href="../classes/Circle.html">Circle</a></li>
                                <li><a href="../classes/Constraint.html">Constraint</a></li>
                                <li><a href="../classes/ContactEquation.html">ContactEquation</a></li>
                                <li><a href="../classes/ContactMaterial.html">ContactMaterial</a></li>
                                <li><a href="../classes/Convex.html">Convex</a></li>
                                <li><a href="../classes/DistanceConstraint.html">DistanceConstraint</a></li>
                                <li><a href="../classes/Equation.html">Equation</a></li>
                                <li><a href="../classes/EventEmitter.html">EventEmitter</a></li>
                                <li><a href="../classes/FrictionEquation.html">FrictionEquation</a></li>
                                <li><a href="../classes/GearConstraint.html">GearConstraint</a></li>
                                <li><a href="../classes/GSSolver.html">GSSolver</a></li>
                                <li><a href="../classes/Heightfield.html">Heightfield</a></li>
                                <li><a href="../classes/Island.html">Island</a></li>
                                <li><a href="../classes/IslandManager.html">IslandManager</a></li>
                                <li><a href="../classes/IslandNode.html">IslandNode</a></li>
                                <li><a href="../classes/Line.html">Line</a></li>
                                <li><a href="../classes/LinearSpring.html">LinearSpring</a></li>
                                <li><a href="../classes/LockConstraint.html">LockConstraint</a></li>
                                <li><a href="../classes/Material.html">Material</a></li>
                                <li><a href="../classes/NaiveBroadphase.html">NaiveBroadphase</a></li>
                                <li><a href="../classes/Narrowphase.html">Narrowphase</a></li>
                                <li><a href="../classes/Object pooling utility..html">Object pooling utility.</a></li>
                                <li><a href="../classes/OverlapKeeper.html">OverlapKeeper</a></li>
                                <li><a href="../classes/OverlapKeeperRecord.html">OverlapKeeperRecord</a></li>
                                <li><a href="../classes/Particle.html">Particle</a></li>
                                <li><a href="../classes/Plane.html">Plane</a></li>
                                <li><a href="../classes/PrismaticConstraint.html">PrismaticConstraint</a></li>
                                <li><a href="../classes/Ray.html">Ray</a></li>
                                <li><a href="../classes/RaycastResult.html">RaycastResult</a></li>
                                <li><a href="../classes/RevoluteConstraint.html">RevoluteConstraint</a></li>
                                <li><a href="../classes/RotationalLockEquation.html">RotationalLockEquation</a></li>
                                <li><a href="../classes/.html"></a></li>
                                <li><a href="../classes/RotationalSpring.html">RotationalSpring</a></li>
                                <li><a href="../classes/RotationalVelocityEquation.html">RotationalVelocityEquation</a></li>
                                <li><a href="../classes/SAPBroadphase.html">SAPBroadphase</a></li>
                                <li><a href="../classes/Shape.html">Shape</a></li>
                                <li><a href="../classes/Solver.html">Solver</a></li>
                                <li><a href="../classes/Spring.html">Spring</a></li>
                                <li><a href="../classes/TopDownVehicle.html">TopDownVehicle</a></li>
                                <li><a href="../classes/TupleDictionary.html">TupleDictionary</a></li>
                                <li><a href="../classes/Utils.html">Utils</a></li>
                                <li><a href="../classes/vec2.html">vec2</a></li>
                                <li><a href="../classes/WheelConstraint.html">WheelConstraint</a></li>
                                <li><a href="../classes/World.html">World</a></li>
                            </ul>
                
                            <ul id="api-modules" class="apis modules">
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="yui3-u-3-4">
                <div id="api-options">
                    Show:
                    <label for="api-show-inherited">
                        <input type="checkbox" id="api-show-inherited" checked>
                        Inherited
                    </label>
            
                    <label for="api-show-protected">
                        <input type="checkbox" id="api-show-protected">
                        Protected
                    </label>
            
                    <label for="api-show-private">
                        <input type="checkbox" id="api-show-private">
                        Private
                    </label>
                    <label for="api-show-deprecated">
                        <input type="checkbox" id="api-show-deprecated">
                        Deprecated
                    </label>
            
                </div>
            
            <div class="apidocs">
                <div id="docs-main">
                    <div class="content">
<h1>IslandManager Class</h1>
<div class="box meta">

        <div class="extends">
            Extends <a href="../classes/Solver.html" class="crosslink">Solver</a>
        </div>

        <div class="foundat">
            Defined in: <a href="../files/src_world_IslandManager.js.html#l10"><code>src&#x2F;world&#x2F;IslandManager.js:10</code></a>
        </div>


</div>


<div class="box intro">
    <p>Splits the system of bodies and equations into independent islands</p>

</div>

    <div class="constructor">
        <h2>Constructor</h2>
        <div id="method_IslandManager" class="method item">
            <h3 class="name"><code>IslandManager</code></h3>
        
                <div class="args">
                    <span class="paren">(</span><ul class="args-list inline commas">
                        <li class="arg">
                                <code class="optional">[options]</code>
                        </li>
                    </ul><span class="paren">)</span>
                </div>
        
        
        
        
        
        
        
        
            <div class="meta">
                        <p>
                        Defined in
                <a href="../files/src_world_IslandManager.js.html#l10"><code>src&#x2F;world&#x2F;IslandManager.js:10</code></a>
                </p>
        
        
        
            </div>
        
            <div class="description">
                
            </div>
        
                <div class="params">
                    <h4>Parameters:</h4>
        
                    <ul class="params-list">
                        <li class="param">
                                <code class="param-name optional">[options]</code>
                                <span class="type">Object</span>
                                <span class="flag optional" title="This parameter is optional.">optional</span>
        
        
                            <div class="param-description">
                                 
                            </div>
        
                        </li>
                    </ul>
                </div>
        
        
        
        </div>
    </div>

<div id="classdocs" class="tabview">
    <ul class="api-class-tabs">
        <li class="api-class-tab index"><a href="#index">Index</a></li>

            <li class="api-class-tab methods"><a href="#methods">Methods</a></li>
            <li class="api-class-tab properties"><a href="#properties">Properties</a></li>
    </ul>

    <div>
        <div id="index" class="api-class-tabpanel index">
            <h2 class="off-left">Item Index</h2>

                <div class="index-section methods">
                    <h3>Methods</h3>

                    <ul class="index-list methods extends">
                            <li class="index-item method inherited">
                                <a href="#method_addEquation">addEquation</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_addEquations">addEquations</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_bfs">bfs</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_emit">emit</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_getUnvisitedNode">getUnvisitedNode</a>

                                    <span class="flag static">static</span>
                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_has">has</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_off">off</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_on">on</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_removeAllEquations">removeAllEquations</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_removeEquation">removeEquation</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_solve">solve</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_solveIsland">solveIsland</a>

                            </li>
                            <li class="index-item method inherited">
                                <a href="#method_sortEquations">sortEquations</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_split">split</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_visit">visit</a>

                            </li>
                    </ul>
                </div>

                <div class="index-section properties">
                    <h3>Properties</h3>

                    <ul class="index-list properties extends">
                            <li class="index-item property inherited">
                                <a href="#property_equations">equations</a>

                            </li>
                            <li class="index-item property inherited">
                                <a href="#property_equationSortFunction">equationSortFunction</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_islandPool">islandPool</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_islands">islands</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_nodePool">nodePool</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_nodes">nodes</a>

                            </li>
                            <li class="index-item property private">
                                <a href="#property_queue">queue</a>

                            </li>
                    </ul>
                </div>


        </div>

            <div id="methods" class="api-class-tabpanel">
                <h2 class="off-left">Methods</h2>

<div id="method_addEquation" class="method item inherited">
    <h3 class="name"><code>addEquation</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>eq</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_addEquation">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l82"><code>src&#x2F;solver&#x2F;Solver.js:82</code></a>
        </p>



    </div>

    <div class="description">
        <p>Add an equation to be solved.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">eq</code>
                        <span class="type"><a href="../classes/Equation.html" class="crosslink">Equation</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_addEquations" class="method item inherited">
    <h3 class="name"><code>addEquations</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>eqs</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_addEquations">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l94"><code>src&#x2F;solver&#x2F;Solver.js:94</code></a>
        </p>



    </div>

    <div class="description">
        <p>Add equations. Same as .addEquation, but this time the argument is an array of Equations</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">eqs</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_bfs" class="method item">
    <h3 class="name"><code>bfs</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>root</code>
                </li>
                <li class="arg">
                        <code>bds</code>
                </li>
                <li class="arg">
                        <code>eqs</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_world_IslandManager.js.html#l94"><code>src&#x2F;world&#x2F;IslandManager.js:94</code></a>
        </p>



    </div>

    <div class="description">
        <p>Runs the search algorithm, starting at a root node. The resulting bodies and equations will be stored in the provided arrays.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">root</code>
                        <span class="type"><a href="../classes/IslandNode.html" class="crosslink">IslandNode</a></span>


                    <div class="param-description">
                        <p>The node to start from</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bds</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                        <p>An array to append resulting Bodies to.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">eqs</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                        <p>An array to append resulting Equations to.</p>

                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_emit" class="method item inherited">
    <h3 class="name"><code>emit</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>event</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/EventEmitter.html" class="crosslink">EventEmitter</a></span>
        </span>







    <div class="meta">
                <p>Inherited from
                <a href="../classes/EventEmitter.html#method_emit">EventEmitter</a>:
        <a href="../files/src_events_EventEmitter.js.html#l79"><code>src&#x2F;events&#x2F;EventEmitter.js:79</code></a>
        </p>



    </div>

    <div class="description">
        <p>Emit an event.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">event</code>
                        <span class="type">Object</span>


                    <div class="param-description">
                         
                    </div>

                        <ul class="params-list">
                            <li class="param">
                                    <code class="param-name">type</code>
                                    <span class="type">String</span>

                                <div class="param-description">
                                    
                                </div>

                            </li>
                        </ul>
                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/EventEmitter.html" class="crosslink">EventEmitter</a></span>:
                    <p>The self object, for chainability.</p>

            </div>
        </div>


</div>
<div id="method_getUnvisitedNode" class="method item">
    <h3 class="name"><code>getUnvisitedNode</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>nodes</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/IslandNode.html" class="crosslink">IslandNode</a> | Boolean</span>
        </span>




        <span class="flag static">static</span>



    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_world_IslandManager.js.html#l58"><code>src&#x2F;world&#x2F;IslandManager.js:58</code></a>
        </p>



    </div>

    <div class="description">
        <p>Get an unvisited node from a list of nodes.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">nodes</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/IslandNode.html" class="crosslink">IslandNode</a> | Boolean</span>:
                    <p>The node if found, else false.</p>

            </div>
        </div>


</div>
<div id="method_has" class="method item inherited">
    <h3 class="name"><code>has</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>type</code>
                </li>
                <li class="arg">
                        <code>listener</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type">Boolean</span>
        </span>







    <div class="meta">
                <p>Inherited from
                <a href="../classes/EventEmitter.html#method_has">EventEmitter</a>:
        <a href="../files/src_events_EventEmitter.js.html#l35"><code>src&#x2F;events&#x2F;EventEmitter.js:35</code></a>
        </p>



    </div>

    <div class="description">
        <p>Check if an event listener is added</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">type</code>
                        <span class="type">String</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">listener</code>
                        <span class="type">Function</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type">Boolean</span>:
            </div>
        </div>


</div>
<div id="method_off" class="method item inherited">
    <h3 class="name"><code>off</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>type</code>
                </li>
                <li class="arg">
                        <code>listener</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/EventEmitter.html" class="crosslink">EventEmitter</a></span>
        </span>







    <div class="meta">
                <p>Inherited from
                <a href="../classes/EventEmitter.html#method_off">EventEmitter</a>:
        <a href="../files/src_events_EventEmitter.js.html#l60"><code>src&#x2F;events&#x2F;EventEmitter.js:60</code></a>
        </p>



    </div>

    <div class="description">
        <p>Remove an event listener</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">type</code>
                        <span class="type">String</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">listener</code>
                        <span class="type">Function</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/EventEmitter.html" class="crosslink">EventEmitter</a></span>:
                    <p>The self object, for chainability.</p>

            </div>
        </div>


</div>
<div id="method_on" class="method item inherited">
    <h3 class="name"><code>on</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>type</code>
                </li>
                <li class="arg">
                        <code>listener</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/EventEmitter.html" class="crosslink">EventEmitter</a></span>
        </span>







    <div class="meta">
                <p>Inherited from
                <a href="../classes/EventEmitter.html#method_on">EventEmitter</a>:
        <a href="../files/src_events_EventEmitter.js.html#l13"><code>src&#x2F;events&#x2F;EventEmitter.js:13</code></a>
        </p>



    </div>

    <div class="description">
        <p>Add an event listener</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">type</code>
                        <span class="type">String</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">listener</code>
                        <span class="type">Function</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/EventEmitter.html" class="crosslink">EventEmitter</a></span>:
                    <p>The self object, for chainability.</p>

            </div>
        </div>


</div>
<div id="method_removeAllEquations" class="method item inherited">
    <h3 class="name"><code>removeAllEquations</code></h3>

        <span class="paren">()</span>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_removeAllEquations">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l123"><code>src&#x2F;solver&#x2F;Solver.js:123</code></a>
        </p>



    </div>

    <div class="description">
        <p>Remove all currently added equations.</p>

    </div>




</div>
<div id="method_removeEquation" class="method item inherited">
    <h3 class="name"><code>removeEquation</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>eq</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_removeEquation">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l110"><code>src&#x2F;solver&#x2F;Solver.js:110</code></a>
        </p>



    </div>

    <div class="description">
        <p>Remove an equation.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">eq</code>
                        <span class="type"><a href="../classes/Equation.html" class="crosslink">Equation</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_solve" class="method item inherited">
    <h3 class="name"><code>solve</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>dt</code>
                </li>
                <li class="arg">
                        <code>world</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_solve">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l37"><code>src&#x2F;solver&#x2F;Solver.js:37</code></a>
        </p>



    </div>

    <div class="description">
        <p>Method to be implemented in each subclass</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">dt</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">world</code>
                        <span class="type"><a href="../classes/World.html" class="crosslink">World</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_solveIsland" class="method item inherited">
    <h3 class="name"><code>solveIsland</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>dt</code>
                </li>
                <li class="arg">
                        <code>island</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_solveIsland">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l49"><code>src&#x2F;solver&#x2F;Solver.js:49</code></a>
        </p>



    </div>

    <div class="description">
        <p>Solves all constraints in an island.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">dt</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">island</code>
                        <span class="type"><a href="../classes/Island.html" class="crosslink">Island</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_sortEquations" class="method item inherited">
    <h3 class="name"><code>sortEquations</code></h3>

        <span class="paren">()</span>








    <div class="meta">
                <p>Inherited from
                <a href="../classes/Solver.html#method_sortEquations">Solver</a>:
        <a href="../files/src_solver_Solver.js.html#l72"><code>src&#x2F;solver&#x2F;Solver.js:72</code></a>
        </p>



    </div>

    <div class="description">
        <p>Sort all equations using the .equationSortFunction. Should be called by subclasses before solving.</p>

    </div>




</div>
<div id="method_split" class="method item">
    <h3 class="name"><code>split</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>world</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type">Array</span>
        </span>







    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_world_IslandManager.js.html#l132"><code>src&#x2F;world&#x2F;IslandManager.js:132</code></a>
        </p>



    </div>

    <div class="description">
        <p>Split the world into independent islands. The result is stored in .islands.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">world</code>
                        <span class="type"><a href="../classes/World.html" class="crosslink">World</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type">Array</span>:
                    <p>The generated islands</p>

            </div>
        </div>


</div>
<div id="method_visit" class="method item">
    <h3 class="name"><code>visit</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>node</code>
                </li>
                <li class="arg">
                        <code>bds</code>
                </li>
                <li class="arg">
                        <code>eqs</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_world_IslandManager.js.html#l76"><code>src&#x2F;world&#x2F;IslandManager.js:76</code></a>
        </p>



    </div>

    <div class="description">
        <p>Visit a node.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">node</code>
                        <span class="type"><a href="../classes/IslandNode.html" class="crosslink">IslandNode</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bds</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">eqs</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
            </div>

            <div id="properties" class="api-class-tabpanel">
                <h2 class="off-left">Properties</h2>

                    <div id="property_equations" class="property item">
                        <h3 class="name"><code>equations</code></h3>
                        <span class="type">Array</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                <p>Inherited from
                                <a href="../classes/Solver.html#property_equations">
                                    Solver
                                </a>
                                but overwritten in
                            <a href="../files/src_world_IslandManager.js.html#l32"><code>src&#x2F;world&#x2F;IslandManager.js:32</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The equations to split. Manually fill this array before running .split().</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_equationSortFunction" class="property item inherited">
                        <h3 class="name"><code>equationSortFunction</code></h3>
                        <span class="type">Function | Boolean</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>Inherited from
                                    <a href="../classes/Solver.html#property_equationSortFunction">Solver</a>:
                            <a href="../files/src_solver_Solver.js.html#l27"><code>src&#x2F;solver&#x2F;Solver.js:27</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Function that is used to sort all equations before each solve.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_islandPool" class="property item">
                        <h3 class="name"><code>islandPool</code></h3>
                        <span class="type">IslandPool</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_world_IslandManager.js.html#l26"><code>src&#x2F;world&#x2F;IslandManager.js:26</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_islands" class="property item">
                        <h3 class="name"><code>islands</code></h3>
                        <span class="type">Array</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_world_IslandManager.js.html#l38"><code>src&#x2F;world&#x2F;IslandManager.js:38</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The resulting <a href="../classes/Island.html" class="crosslink">Island</a>s.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_nodePool" class="property item">
                        <h3 class="name"><code>nodePool</code></h3>
                        <span class="type">IslandNodePool</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_world_IslandManager.js.html#l20"><code>src&#x2F;world&#x2F;IslandManager.js:20</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_nodes" class="property item">
                        <h3 class="name"><code>nodes</code></h3>
                        <span class="type">Array</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_world_IslandManager.js.html#l44"><code>src&#x2F;world&#x2F;IslandManager.js:44</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The resulting graph nodes.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_queue" class="property item private">
                        <h3 class="name"><code>queue</code></h3>
                        <span class="type">Array</span>
                    
                    
                            <span class="flag private">private</span>
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_world_IslandManager.js.html#l50"><code>src&#x2F;world&#x2F;IslandManager.js:50</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The node queue, used when traversing the graph of nodes.</p>
                    
                        </div>
                    
                    
                    
                    </div>
            </div>


    </div>
</div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<script src="../assets/vendor/prettify/prettify-min.js"></script>
<script>prettyPrint();</script>
<script src="../assets/js/yui-prettify.js"></script>
<script src="../assets/../api.js"></script>
<script src="../assets/js/api-filter.js"></script>
<script src="../assets/js/api-list.js"></script>
<script src="../assets/js/api-search.js"></script>
<script src="../assets/js/apidocs.js"></script>
</body>
</html>
